The present invention relates to logic circuits, and more particularly to a method and circuit for optimizing power consumption in a flip-flop.
Most VLSI designs have numerous flip-flops integrated within them. Typically, flip-flops are critical to the overall performance of this design. Conventional flip-flops are generally large, power hungry and a significant amount of time is spent optimizing their configuration. It is desirable therefore to minimize the power used by flip-flops in a circuit design. It is known that one way to save power is to shut off sections of the design. For example, one way to save power is to utilize clock gating to disable the clock when it is not used. Also, in an effort to save or minimize standby power, some designs have resorted to disabling non-used sections of the design from the power supply. However, disabling power supply generally results in a loss of stored data in the volatile memory elements.
A solution for the problem of data loss during a standby mode is to transfer the data, or state of a latch, to an on-chip memory before the latch is disconnected from the power supply. Examples of on-chip memory include DRAM, SRAM, or Flash memory. This enables the powering down of the latch to conserve power. This technique, however, requires an auxiliary device, i.e., the on-chip memory.
Accordingly, what is needed is a method and circuit for optimizing power consumption in a flip-flop. The method and circuit should also be cost effective, save space, and easily implemented in existing circuit designs. The present invention addresses such needs.
A flip-flop is disclosed. The flip-flop includes a first latch for receiving at least one bit and a second latch coupled to the first latch for storing the at least one bit from the first latch. The size of the second latch is minimized to reduce power consumption. The flip-flop also includes a multiplexor coupled to the first latch and to the second latch for outputting the at least one bit from the first latch when a clock to the multiplexor is active and for outputting the at least one bit from the second latch when the clock is inactive.
A system and method in accordance with the present invention optimize power consumption in a flip-flop through the use of a multiplexor for the output function. As a result, the size of the slave latch can be minimized, which reduces the overall power consumption of the flip-flop and its associated clock tree.